package be.ipl.uccimpl;

import javax.ejb.EJB;
import javax.ejb.Stateless;

import be.ipl.dao.JoueurDao;
import be.ipl.domaine.Joueur;
import be.ipl.exception.ArgumentInvalideException;
import be.ipl.ucc.GestionJoueur;
import be.ipl.util.Util;


/**
 * The Class GestionJoueurImpl.
 */
@Stateless
public class GestionJoueurImpl implements GestionJoueur {
	
	/** The joueur dao. */
	@EJB
	private JoueurDao joueurDao;
	
	/** The joueur. */
	private Joueur joueur;

	
	@Override
	/**
	 * Inscription d'un joueur
	 */
	public boolean enregistrer(String login, String mdp, String nom,
			String prenom, String mail) {
		try {
			Util.checkString(mail);
			Util.checkString(login);
			Util.checkString(mdp);
			Util.checkString(prenom);
			Util.checkString(nom);
		} catch (ArgumentInvalideException e1) {
			e1.printStackTrace();
		}
		
		
		joueur = new Joueur(nom, prenom, login, mdp, mail);
		try {
			joueur = joueurDao.enregistrer(joueur);
			joueurDao.enregistrer(joueur);
			return true;
		} catch (Exception e) {
			return false;
		}
	}

	
	/**
	 * recherche d'un joueur sur base de son login
	 * (connexion)
	 */
	public boolean authentificationJoueur(String login, String mdp) {
		try {
			Util.checkString(login);
			Util.checkString(mdp);
		} catch (ArgumentInvalideException e) {
			e.printStackTrace();
		}
		
		joueur = joueurDao.rechercher(login);
		return joueur.getMotDePasse().equals(mdp);
	}

}
